﻿using System.ComponentModel;
using System.ComponentModel.DataAnnotations;

namespace B.S.DataBase.EFCoreServiers.Dtos.Roles
{
    public class GetRoleDto
    {
        /// <summary>
        /// 角色名称
        /// </summary>
        public string? RoleName { get; set; }
        /// <summary>
        /// 当前页码（从1开始）
        /// </summary>
        [DefaultValue(1)]
        public int pageIndex { get; set; } = 1;
        /// <summary>
        /// 每页条数
        /// </summary>
        [DefaultValue(10)]
        public int pageSize { get; set; } = 10;

    }
    public class GetRoleResponseDto
    {
        /// <summary>
        /// 角色ID
        /// </summary>
        public int RoleId { get; set; }
        /// <summary>
        /// 角色名称
        /// </summary>
        public string RoleName { get; set; }
        /// <summary>
        /// 角色描述
        /// </summary>
        public string Description { get; set; }
        /// <summary>
        /// 是否启用
        /// </summary>
        public bool IsEnabled { get; set; }
        /// <summary>
        /// 部门名称。
        /// 对应数据库中的 'department_name' 字段，非空，唯一。
        /// 例如："总裁办"。
        /// </summary>
        public string DepartmentName { get; set; }
        /// <summary>
        /// 部门成员数量。
        /// 对应数据库中的 'member_count' 字段，去范式化字段，用于快速显示。
        /// 在实际应用中，此值可能通过业务逻辑维护或从关联表中计算。
        /// </summary>
        public int MemberCount { get; set; } = 0; // 默认值为0

    }


}
